home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-03-06 | 1.9 KB | 56 lines | [TEXT/GEOL] |
- Item forwarded by NOVELL.MAC to NOVELL.ENG
-
- Item 4423130 29-June-90 10:32PDT
-
- From: AUST0134 Jam Software Sydney,IVR
-
- To: MACAPP.TECH$ MacApp Technical
-
- Sub: TTEView bug
-
- Dear MacAppers,
-
- I recently found this bug in TTEView (ß9). I have a TTEView, fSTyleType =
- kWithStyle, Inset(4,4,4,4). If I perform SetOneStyle with a change which
- increases the vertical height of the text, either because it causes a wrap or
- because I am increase the point size, TTEView will not update a 4 pixel high
- horizontal strip near the bottom the TTEView.
-
- Looking in the "bugs in ß9" document, I found
- BRC No: 31550
- -------------
- After wraparound in a TEView with non-zero bottom inset, only part
- of the second line is displayed.
- After mousing through the code a bit it seems that the problem is that Resize
- (which is called from AdjustSize from SynchView from SetOneStyle) does an
- InvalRgn of the difference between the new, larger TTEView extent and the old
- one. Unfortunately, with a non-zero bottom inset, the area between the bottom
- of the TTEView and the bottom of the TEHandle itself (which is blank space) is
- not included in this InvalRgn. Even more some parts of the newly enlarged
- characters should be drawn over this area.
-
- Looking at 2.0final, Resize has changed a bit, but the algorithm seems
- essentially the same, which means the bug probably remains. (Verification,
- please?)
-
- One solution is to OVERRIDE Resize, and allowing for the bottom inset before
- doing the resize:
-
- PROCEDURE TMyTEView.Resize(width, height: VCoordinate; invalidate: BOOLEAN);
- OVERRIDE;
- VAR
- oldSize:VPoint;
- BEGIN
- oldSize := fSize;
- IF (fSize.h <> width) | (fSize.v <> height) THEN BEGIN
- fSize.v := fSize.v - fInset.bottom;
- INHERITED Resize(width, height, invalidate);
- fSize := oldSize;
- END
- END;
-
- Tseung Cheung
- JAM Software Pty Ltd
- ALink AUST0134
-
-